import requests
import my_app_config


"""
    依赖GPT实现的翻译器
"""
class GptTranslator:
    def __init__(self):
        self.name = 'gpt'

    def translate(self, text: str, language = '中文') -> str:
        """
        将指定的文本翻译为指定的语言
        :param text:    待翻译文本
        :param language:    目标语言
        :return:    翻译后的文字
        """

        # 设置请求头
        headers = {
            "Authorization": f"Bearer {my_app_config.my_app_config.api_key}",
            "Content-Type": "application/json"
        }

        # 设置请求数据
        data = {
                "model": "gpt-3.5-turbo",
                "messages": [
                    {
                        "role": "user",
                        "content": f"翻译成中文：{text}"
                    }
                ],
                "stream": false,
                "temperature": 1,
                "top_p": 0.7
            }

        # 发送POST请求
        response = requests.post(my_app_config.my_app_config.api_endpoint, headers=headers, json=data)

        # 检查响应状态码
        if response.status_code == 200:
            # 解析JSON响应
            response_data = response.json()
            print(response_data)
            return response_data['choices'][0]['message']['content']
        else:
            print("翻译失败：", response)
            return 'error'